package com.dk.shared.autoconfigure.common;

import com.dk.common.defs.CommonDefs;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.springframework.boot.context.properties.ConfigurationProperties;

import java.time.ZoneId;
import java.util.List;

@Getter
@Setter
@ToString
@ConfigurationProperties(prefix = SharedProperties.PREFIX)
public class SharedProperties {
    public static final String PREFIX = CommonDefs.PROD_NAME + ".shared";

    @Getter
    private static String tokenName = "authorization";

    public void setTokenName(String tokenName) {
        SharedProperties.tokenName = tokenName;
    }


    private List<String> securityPermits;

    private String internalAccessBaseUri;

    private String externalAccessBaseUri;

    private String aesSecret;

    private String RSAPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwXJ/C7Yr4y360Wdr7OiNEr7CxQdnjA0B4JO+pPbd7JOtfa9ICuNd2ZHNvOCwiYy1M6KAHLMDwIMkD+4hAlSwUkT5yc6L9nfa7qKHCUZLrB/W1u+7wsqLIf+Io9v7UOkDLSFgEIUAYd489stpM8uoq/Ap6MsXDKOnFK+4xXJdo8UGF9muSZKmSiyT2SDwwMalcX4boAQVqr0bn3XstTmuwx4W21T7Me+MvR6X4SJ/THC8GLnbX0D81O86eMfdGNFBPyQc5vronAYxEWfW8Wm5NgdmVN2SlfrHOWw97BMfDW2en82BWXaKIYhNMTBNMX0vThptV/uC+kqBJ6kCI17v7QIDAQAB";
    private String RSAPrivateKey = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDBcn8LtivjLfrRZ2vs6I0SvsLFB2eMDQHgk76k9t3sk619r0gK413Zkc284LCJjLUzooAcswPAgyQP7iECVLBSRPnJzov2d9ruoocJRkusH9bW77vCyosh/4ij2/tQ6QMtIWAQhQBh3jz2y2kzy6ir8CnoyxcMo6cUr7jFcl2jxQYX2a5JkqZKLJPZIPDAxqVxfhugBBWqvRufdey1Oa7DHhbbVPsx74y9HpfhIn9McLwYudtfQPzU7zp4x90Y0UE/JBzm+uicBjERZ9bxabk2B2ZU3ZKV+sc5bD3sEx8NbZ6fzYFZdoohiE0xME0xfS9OGm1X+4L6SoEnqQIjXu/tAgMBAAECggEADVaVVhu/kDdtd4fUOwDGKM84jJ0qTPQqEuaNBBwjdnFC3Oa7lG0vFFYi9fIWKhAUbYvKC7muuXl6gJL5sGY9MvSx2wREfLb56QGj/c84Fcw9pBK9cLy0CDNNJBoUaBlHx0kyn46vjEbUNEc8FqxlJCCu6MtQn1OxrL+LAXLMWfDPAMbOn406fEW+KfiUptOqhZ9kKlRo4kGdyaJGeCrdmcBiMmg8OBL0TjNKQJXakfWyhfOmDxqxKQaXYFfPstSUva9mjlxyLPmASmkhuZKevUwXDhAbSUWro33MQ1reXIIWOtiRT2ugEpah0oZeX+2eOVSJluTBEW3yUbW1aPlbHwKBgQD54lxspr5G66yTZF7hTYl1XB0+PwiLJswZSibt6RnAtNtZyEgwp10TyWFAs8CbEzcjZ/Ip51QrvsAyV00o41Hw2cR9nuKjKT/ftJLu4bcDRX2UY1ejrKQRmZ62hgZmxqFUdzBjWOm5CqfqZqFcDykpxxPZ4N1/Y00/No/LSUka/wKBgQDGLogjqrZxGOTHIMDDNZlyW8k47cBdGFWSnNlQeR47OMVn+3Q8Ps9cQcsIacm+IZ4/m715l0By8kWnXC5IFHHulCLXOzPFFzXZ8cNXMprQZJJ1uZT5k7xAdTpmfsNNYWc9nz5AhCpRoje3cPW7MkOdvC/uyvi9Kh5mvaT4CtkREwKBgBbihjhlJPP1zX5KKO5VXYtj/kGfIDcuPG7sfZg4SuV9KsGUOBhMm5eeT8vPKoqJPfl+IY145BqFg7CYkjZ2ayC1sOsYTAVJV9IzBWnfPhWMna2jU3ln7Da4bPKmX5u2ATxtFf9jOzR5J1uuPoTh1pE+7DB+CYsLGx347z5c3dcdAoGBAJSEIH/iGfDtf9z+XZas3z6FLGneOi9J4i8KHg0hhxdIdx9yoGvZghoYMCgw5v/2P5pZgwfQ4nqBttMx0Hkx4SOynd1/v08vEqsuc34wLTaId/2DQvI51XTUpRxUWNXvbagPY16D7RbaIzj0jSJpC6T0d1NThk50du31puA/eOZDAoGAW3KdlIB46aCS8qNlOg0KOrJxO0OoS8uuXDyoKcx2rYuydU2IWM3nAjV8HuwbmmTDnHFCemLtPAgPLt3lq2HAypEEK/U4/kliL9Y+zKQQSQnlhNdw/0moXlWdoe818cU6b4ITUAekyZryolM5OzzCWKtk4iE8olv+Z86mnYKfE9o=";

    private String zoneId = "UTC+8";

    private String[] modelFileSuffixes;

    private String noAuthorizationToken = "noAuthorizationToken";

    public ZoneId getZoneId() {
        return ZoneId.of(zoneId);
    }
}
